Virtual Learning Environment for Object-oriented Design Patterns

نویسندگان

  • Heiko Hirschmüller
  • Michael Callaghan
  • Alan O’Callaghan
  • Marwan Al-Akaidi
چکیده

information in particular can benefit from appropriate visualisation. Authors like Benedict (1991) and Wexelblat (1991) offer an analytical foundation for the visualisation of abstract data. One particular area of application is software visualisation, in which more graphical ways of communicating information about the structure and behaviour of computer programs are sought (Price et al 1993). This paper describes a form of software visualisation which focuses on software designs. The object-oriented design pattern collection from Gamma et al. (1995) is used as a basis to develop a new form of visualisation combining virtual reality and hypertext. The goal was not to replace the traditional kind of pattern presentation, but to complement it. In this paper the way in which the visualisation style was arrived at is first described by analysis of the information to be presented. The way in which the four available dimensions (including time) are utilised is then explained and illustrated, and some background on the implementation architecture is provided. The paper concludes with a critical review of the current state of the work and a discussion of proposed further development. 2. THE VISUALISATION CONCEPT The creation of a new interface for communicating the information content of patterns to the user is described below in two steps. First, the information that is of interest to visualise is discussed. Then, the choice of visualisation techniques are discussed on this basis. An objective for the visualisation was to explore the possibility of visualising a part of the pattern in virtual reality and complementing this view with hypertext. This aspect is intended to combine the benefits of both techniques. On the one hand, a presentation of patterns using only interlinked hypertext is possible and has already been shown to be useful (Budinsky et al., 1996). On the other hand, a visualisation of all aspects of the patterns in virtual reality might also be useful by the provision of the extra visual and time dimensions. 2.1 Analysis Breaking The Pattern Description Into Parts There are two levels of description in Gamma et al.’s design pattern collection. At the overview level all design patterns are presented together, whereas the pattern level is concerned with describing individual patterns in detail. 2.1.1 The Overview And Individual Pattern Level The pattern overview level provides information about the pattern’s name, its classification, brief description (intent) and its relationships to other patterns. Gamma et al. suggest the use of these overviews to search for a pattern appropriate for a particular design situation. Visualisation of the overview level was not addressed in the work discussed here, because more information would be needed to create an advanced visualisation than is already provided in the base material. The pattern level presents the information about a single pattern in a clearly structured form. The sections of a pattern can, according to Gamma et al. (page 3), be categorised into four parts. • Pattern name and intent (text) • Problem description Motivation section (text) Applicability section (text) • Solution description Structure section (Class Hierarchy, Object Diagram) Participants section (text) Collaborations section (Interaction Diagram, text) Implementation section (text) Sample code section (text) Known uses section (text) • Consequences (text) The Related Patterns section is not discussed here because it is inter-pattern information and belongs therefore to the overview level. The main two parts of a pattern are its problem and solution description. The problem description is slightly under represented in contrast to the description of the solution. Alexander’s patterns emphasise the problem they address, whereas the design patterns analysed here describe the solution in more detail. This is a problem which is identified by Gamma et al. (page 356). It needs less cognitive load to match a concrete problem against problem descriptions to find a proper pattern, than thinking every solution through in order to see if a pattern is applicable. Jackson (1994) also raises the issue that software designers are working too much in the solution space and not the problem space. The Structure and Collaboration sections in the patterns book make use of traditional graphical visualisation to support the solution description; in the main, Class Hierarchy-, Object, and Interaction diagrams are used. These three kinds of diagrams are from leading objectoriented methodologies (e.g., OMT from Rumbaugh et al. (1991) or the Booch (1994) method). General short-comings with these diagrams are that several diagrams are needed to provide a whole view of the system. Each diagram contains only a part of the information. It needs some additional cognitive work to join the information of different diagrams (Koike 1993). Furthermore, it is difficult to represent time in these static diagrams, but this is needed to show the interaction dynamics of software. Object diagrams are only snapshots of important, representative moments, whereas in the interaction diagram the time aspect is so essential that it has to be mapped to a spatial dimension (usually to the vertical y-axis). The importance of showing dynamic aspects of object-oriented software was pointed out by Shilling and Stasko (1992) and De Pauw et al. (1994). 2.1.2 Analysis Of The Results Resulting from this analysis, it was identified that the problem description of a pattern is an important part which is mainly expressed in the motivation and applicability section of each pattern. This problem description is underrepresented in this pattern collection (see above) and the existing information is expressed in natural language description. The lack of concrete clear information makes an advanced graphical visualisation difficult. The solution description, on the other hand, offers a rich amount of information, which is already partly graphically represented. The short-comings of traditional class or interaction diagrams suggest the exploration of higher dimensional visualisations. Thus, the remainder of this paper focuses mainly on the visualisation of the solution description of design patterns. 2.2 Synthesis Reassembling The Parts The main concern is to visualise the Structure, Participants and Collaborations section of a pattern by building on traditional diagrams. All other sections of a pattern are added in hypertext and links between both kinds of visualisations are built, as described later in section 0. The main approach is to use traditional diagrams and join them together in a higher dimensional visualisation so that the traditional diagrams are then special cases of the resulting view. This metaphorical use of traditional diagrams maintains familiarity, which should aid learning and enhance understanding. Koike (1993) first introduced this concept. However, he was only concerned with combining a class hierarchy with a method list in a combined three dimensional view to enhance the understanding of polymorphism in an object-oriented class library. This concept is used as a starting point for the current work and further extended by combining different traditional diagrams in a different way and including the aspect of time as well. 2.2.1 Usage Of The Four Dimensions A visualisation in a virtual environment offers four dimensions (three spatial dimensions and time) in contrast to the two dimensions of paper-based diagrams. The most important diagrams were identified as the class, object and interaction diagrams (section 2.2.1). Figure 1 shows the combined view of all three kinds of diagrams, as represented in the current work.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Designing the Model of Student Support System in the Virtual Learning Environment: A Necessity in the Face of the Corona Crisis

Introduction: Process of e-learning in universities because of coronavirus (Covid-19)  outbreak was developed. Since the success of students in this type of education requires appropriate and effective support,  the present study has been done  to develop a model of support system  in virtual  learning environment in medical universities. Methods: This  is an applied  qualitative research. To d...

متن کامل

Using Role-play Virtual Environments to Learn Software Design

Object-oriented software design is a kind of black-art that requires a combination of common sense, experience, good taste and the capability to look at a problem from different points of view. According to our experience, these abilities cannot be easily transferred to the students in a lecture. Taking ideas from the way software is designed in industry, according to agile methodologies, we ha...

متن کامل

Designing Interaction Models in a Multiparty 3D Learning Environment

The technology of virtual 3D learning environment creates the opportunity for virtual human interactions. These interactions should enrich learning experience and improve learning quality. However, inappropriate interactions often confuse users about the real underlying learning goal, instead of achieving effective and efficient learning. This situation becomes more serious in a learning enviro...

متن کامل

The Design Principles of Object-Oriented VRML

We present a new 3D scene description language, Object-Oriented VRML, to show how VRML can be extended to incorporate object-oriented design principles. Object-Oriented VRML supports the creation of objects in an object-oriented style. It is based on a safe object type system in which runtime type errors are not generated. It facilitates the efficient implementation of virtual environment syste...

متن کامل

Blueprint for an Adaptive Training - Virtual Learning Environment (ADAPT-VLE) for the Training of Dentists

This paper examines and proposes the design of a framework that allows the creation of an extended virtual learning environment (VLE) for the mobile user. The model incorporates the novel key element of an adaptive learning process mode l which dynamically adapts to the learners interactions within a managed and structured application. To be able to create a dynamic workflow in an interactive l...

متن کامل

Modelsaz: An Object-Oriented Computer-Aided Modeling Environment

Modeling and simulation of processing plants are widely used in industry. Construction of a mathematical model for a plant is a time-consuming and error-prone task. In light of extensive advancements in computer science (both hardware and software), computers are becoming a necessary instrument in industrial activities. Many software tools for modeling, simulation and optimization of proces...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1998